/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package org.cip.esymons.general.bc;

import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import org.cip.esymons.general.be.TipoUsuario;
import org.cip.esymons.general.be.UsuarioExterno;

/**
 *
 * @author ADMINISTRADOR
 */
public class UsuarioExternoDelegate {
    
    private UsuarioExternoFacadeLocal local;

    public UsuarioExternoDelegate() {

        local = lookupUsuarioExternoFacadeLocal();
    }

    public void create(UsuarioExterno usuarioExterno){

        local.create(usuarioExterno);
    }

    public void edit(UsuarioExterno usuarioExterno){

        local.edit(usuarioExterno);
    }

    public void remove(UsuarioExterno usuarioExterno){

        local.remove(usuarioExterno);
    }

    public UsuarioExterno find(Object id){

        return local.find(id);
    }

    public List<UsuarioExterno> findAll(){

        return local.findAll();
    }

    public List<UsuarioExterno> listaUsuarios(){

        return local.listaUsuarios();
    }

    public List<UsuarioExterno> listaUsuariosPorTipo(TipoUsuario tipo){

        return local.listaUsuariosPorTipo(tipo);
    }

    public UsuarioExterno validarUsuario(String user, String clave){

        return local.validarUsuario(user, clave);
    }



    private UsuarioExternoFacadeLocal lookupUsuarioExternoFacadeLocal() {
        try {
            Context c = new InitialContext();
            return (UsuarioExternoFacadeLocal) c.lookup("java:comp/env/UsuarioExternoFacade");
        } catch (NamingException ne) {
            Logger.getLogger(getClass().getName()).log(Level.SEVERE, "exception caught", ne);
            throw new RuntimeException(ne);
        }
    }




}
